Three dimensional graphics request data commonly is processed in a computer system as a plurality of polygons having vertices. Each of the vertices have associated attribute data (e.g., color, transparency, depth, etc . . .) that is utilized to rasterize pixels on a computer display device. The well known OPENGL.TM. application program interface (available from Silicon Graphics Inc. of Mountain View, Calif.) is a commonly used three dimensional graphics library that may be used for processing three dimensional graphics request data in this manner.
Many computer systems utilizing the OPENGL.TM. graphics library process vertex data sequentially and, for various reasons noted below, postpone processing of subsequent vertices until a previous vertex is completely processed. For example, a second vertex typically is not processed until an immediately preceding first vertex is completely processed. Among other reasons, this postponement ensures that the received second vertex data is properly assembled and thus, ready for processing. Premature processing of a successive vertex (e.g., processing the second vertex prior to completion of the first vertex) may cause an error condition if such successive vertex is not completely and properly assembled.
It is not uncommon, however, for a successive vertex to be completely assembled prior to completion of processing of a previous vertex. In systems with many processing resources, postponing processing of a completely assembled vertex thus unnecessarily lengthens the time required to process a graphics request stream.